/**
 * @file 文件中的插件等同于 浏览器扩展
 */
const manifestJson = {
  // 清单的版本号 必填
  "manifest_version": 3,
  // 插件名称 必填
  "name": "Quick API Reference",
  // 插件描述, 如果发布应用商店，则必填
  "description": "Quick API can speed up the building of Chrome extensions.",
  // 插件版本 必填
  "version": "1.0.0",
  // 插件图标, 如果发布应用商店，则必填
  "icons": {
    "16": "images/icon-16.png", // 扩展程序页面和上下文菜单上的网站图标。
    "32": "images/icon-32.png", // Windows 计算机通常需要此大小。
    "48": "images/icon-48.png", // 显示在“扩展程序”页面上。
    "128": "images/icon-128.png" // 安装时会显示在 Chrome 应用商店中。
  },
  // service worker 入口
  "background": {
    "service_worker": "service-worker.js",
    "type": "module"
  },
  // 支持的最小 chrome 版本
  "minimum_chrome_version": "102",
  // 地址栏输入框关键字
  "omnibox": {
    "keyword": "api" // 必填
  },
  // popup UI 配置
  "action": {
    "default_icon": {              // optional
      "16": "images/icon16.png",   // optional
      "24": "images/icon24.png",   // optional
      "32": "images/icon32.png"    // optional
    },
    "default_title": "Click Me",   // optional, shown in tooltip
    "default_popup": "popup.html"  // optional
  },
  // 注册内容脚本
  "content_scripts": [
    {
      "matches": ["https://developer.chrome.com/docs/extensions/reference/*"], // 匹配的网址 特殊匹配 "<all_urls>" 表示匹配所有地址
      "js": ["content.js"], //注入的js
      "css": ["content.css"], // 注入的css
      "run_at": "document_start" // 脚本注入时间 可选值: document_start、document_end、document_idle(默认值)
    }
  ],
  // 权限申请，chrome API 权限的申请
  "permissions": ["alarms", "storage"],
  // 可选的权限，在插件运行时，用户可以访问的额外权限。
  "optional_permissions": [],
  // 主机权限
  "host_permissions": ["https://extension-tips.glitch.me/*"],
  // 可选的主机权限，在插件运行时，用户可以访问的额外主机。
  "optional_host_permissions": ["https://www.google.com/*"],
  // 侧边栏 UI 配置
  "side_panel": {
    "default_path": "sidepanel.html"
  },
  // 覆盖chrome设置
  "chrome_settings_overrides": {
    "homepage": "https://www.homepage.com",
    "search_provider": {
        "name": "name.__MSG_url_domain__",
        "keyword": "keyword.__MSG_url_domain__",
        "search_url": "https://www.foo.__MSG_url_domain__/s?q={searchTerms}",
        "favicon_url": "https://www.foo.__MSG_url_domain__/favicon.ico",
        "suggest_url": "https://www.foo.__MSG_url_domain__/suggest?q={searchTerms}",
        "instant_url": "https://www.foo.__MSG_url_domain__/instant?q={searchTerms}",
        "image_url": "https://www.foo.__MSG_url_domain__/image?q={searchTerms}",
        "search_url_post_params": "search_lang=__MSG_url_domain__",
        "suggest_url_post_params": "suggest_lang=__MSG_url_domain__",
        "instant_url_post_params": "instant_lang=__MSG_url_domain__",
        "image_url_post_params": "image_lang=__MSG_url_domain__",
        "alternate_urls": [
          "https://www.moo.__MSG_url_domain__/s?q={searchTerms}",
          "https://www.noo.__MSG_url_domain__/s?q={searchTerms}"
        ],
        "encoding": "UTF-8",
        "is_default": true
    },
    "startup_pages": ["https://www.startup.com"]
   },
    //  替换 Chrome 网页 只能替换 书签管理器、历史记录、打开新的标签页
   "chrome_url_overrides": {
    "newtab": "newtab.html",
    "bookmarks": "bookmarks.html",
    "history": "history.html"
  },
  // 定义键盘快捷键 参考: https://developer.chrome.google.cn/docs/extensions/reference/api/commands?hl=zh-cn
  "commands": {
    "run-foo": {
      "suggested_key": {
        "default": "Ctrl+Shift+Y",
        "mac": "Command+Shift+Y"
      },
      "description": "Run \"foo\" on the current page."
    },
    "_execute_action": {
      "suggested_key": {
        "windows": "Ctrl+Shift+Y",
        "mac": "Command+Shift+Y",
        "chromeos": "Ctrl+Shift+U",
        "linux": "Ctrl+Shift+J"
      }
    }
  },
  // 脚本注入策略
  "content_security_policy": {
    "extension_pages": "script-src 'self'; object-src 'self';",
    "sandbox": "sandbox allow-scripts allow-forms allow-popups allow-modals; script-src 'self' 'unsafe-inline' 'unsafe-eval'; child-src 'self';"
  },
  // 定义 declarativeNetRequest API 的静态规则，以允许屏蔽和修改网络请求 参考: https://developer.chrome.google.cn/docs/extensions/reference/api/declarativeNetRequest?hl=zh-cn
  "declarative_net_request": {
    "rule_resources": [
      {
        "id": "ruleset_1",
        "enabled": true,
        "path": "rules_1.json"
      }
    ]
  },
  // 定义使用 DevTools API 的页面。参考: https://developer.chrome.google.cn/docs/extensions/how-to/devtools/extend-devtools?hl=zh-cn
  "devtools_page": "devtools.html",
  // 以页面的形式显示扩展程序配置
  "options_page": "options.html",
  // 设置扩展程序配置的选项页面, 注意: options_page 和 options_ui 如果同时存在, options_page 优先级更高
  "options_ui": {
    "page": "options.html",
    "open_in_tab": true // true 表示在选项页面中打开，false(等同于options_page) 表示在扩展程序页面中打开
  }
}
